Automated application workflows based on signal detection

ABSTRACT

Techniques are described for automatically presenting workflow(s) in an application based at least partly on detected signal(s). A radio-frequency signal may be emitted from a transceiver and received by a transceiver of a user device when the transceiver is in proximity to the device. In response, an application including functionality to activate a payment card can launch.

CROSS-REFERENCE TO RELATED APPLICATIONS

This application is a continuation of U.S. patent application Ser. No.15/386,358, filed on Dec. 21, 2016, entitled “AUTOMATED APPLICATIONWORKFLOWS BASED ON SIGNAL DETECTION,” which is a non-provisional of andclaims priority to U.S. Provisional Application No. 62/270,956, filed onDec. 22, 2015, entitled “AUTOMATED APPLICATION WORKFLOWS BASED ON SIGNALDETECTION,” each of which are hereby incorporated by reference in theirentireties for all purposes.

BACKGROUND

Financial service providers such as banks, insurance companies, and soforth may provide a mobile application, through which customers can usea mobile device to access account data, request account activities, orview other information. However, applications designed for largerdevices, such as desktop computers, may be difficult for users to viewand manipulate on smaller, mobile devices with limited display sizeand/or limited interface functionality.

SUMMARY

Implementations of the present disclosure are generally directed to theautomated presentation of workflow(s) in an application based at leastpartly on detected signal(s). More particularly, implementations of thepresent disclosure are directed to the automated presentation ofworkflows for activating a payment card and/or viewing accountinformation, based at least partly on detecting radio-frequencysignal(s) that are emitted from a payment card and/or that identify thepayment card.

In general, innovative aspects of the subject matter described in thisspecification can be embodied in methods that includes actions of:receiving, through a transceiver component of a user device, a signalthat includes a card identifier (ID) of a payment card; determining thecard ID from the signal; determining a status of the payment cardcorresponding to the card ID; and based at least partly on the status ofthe payment card, presenting at least a portion of a workflow in anapplication executing on the user device.

Implementations can include one or more of the following features:presenting the workflow further comprises presenting a card activationworkflow responsive to the status of the payment card being currentlyinactive; presenting the workflow further comprises presenting anaccount information workflow responsive to the status of the paymentcard being currently active; determining the status of the payment cardfurther comprises: sending a status request to a card service executingremotely, the status request including the card ID; and receiving thestatus from the card service in response to the status request; thesignal is transmitted from a radio-frequency transmitter included in thepayment card; the signal is transmitted from a near field communication(NFC) transmitter included in the payment card; sending an activationrequest to a card service executing remotely, the activation requestincluding the card ID; receiving a notification from the card service inresponse to the request, the notification indicating that the paymentcard is activated for a period of time; or the payment card is inactiveprior to sending the activation request, based on a determination that alocation of the user device is outside a typical area of travel.

Other implementations of any of the above aspects include correspondingsystems, apparatus, and computer programs that are configured to performthe actions of the methods, encoded on computer storage devices.

Implementations of the present disclosure provide one or more of thefollowing technical advantages and/or improvements compared totraditional systems. By automatically launching workflow(s) in responseto detected signals, implementations provide a user device that is lesssusceptible than traditional devices to errors in navigation in anapplication executing on the user device. Implementations also provide abetter user experience for users using a user device (e.g., a small,mobile device) to access information via an application executing on theuser device. In some examples, implementations of the present disclosureenable device-based workflows to be executed even with devices withlimited functionality (e.g., mobile devices having limited interfacefunctionality as compared to larger devices). In some examples,implementations of the present disclosure enable device-based workflowsto be executed even with devices with limited screen-size (e.g., mobiledevices having limited display area as compared to larger devices.Moreover, implementations also enable application providers to createnew access point(s) to surface deeply nested functionalities in theapplication. Such access point(s) are presented in response to detectedsignals, and the access point(s) enable to user to readily access thefunctionalities that may otherwise require multiple steps of navigationand/or knowledge of the application architecture. Accordingly,implementations provide for more efficient use of processing capacity,network bandwidth, storage space, active memory, and/or other computingresources compared to traditional systems which may consume suchcomputing resources in recovering from errors in navigation and/or inperforming a greater number of navigation steps compared to theimplementations described herein.

It is appreciated that methods in accordance with the present disclosurecan include any combination of the aspects and features describedherein. That is, methods in accordance with the present disclosure arenot limited to the combinations of aspects and features specificallydescribed herein, but also include any combination of the aspects andfeatures provided.

The details of one or more implementations of the present disclosure areset forth in the accompanying drawings and the description below. Otherfeatures and advantages of the present disclosure will be apparent fromthe description and drawings, and from the claims.

BRIEF DESCRIPTION OF DRAWINGS

FIG. 1 depicts an example system for automatically launching anapplication workflow in response to detecting a signal, according toimplementations of the present disclosure.

FIG. 2 depicts an example system for automatically launching anapplication workflow in response to detecting a signal, according toimplementations of the present disclosure.

FIG. 3 depicts a flow diagram of an example process for automaticallylaunching an application workflow in response to detecting a signal,according to implementations of the present disclosure.

FIG. 4 depicts a flow diagram of an example process for payment cardactivation, according to implementations of the present disclosure.

FIG. 5 depicts a flow diagram of an example process for automaticallylaunching an application workflow in response to detecting a signal,according to implementations of the present disclosure.

FIG. 6 depicts an example computing system, according to implementationsof the present disclosure.

DETAILED DESCRIPTION

Implementations of the present disclosure are directed to systems,devices, methods, and computer-readable media for automaticallylaunching a workflow in an application executing on a computing devicein response to detecting a signal at a transceiver of the computingdevice. In some implementations, an application such as a mobileapplication is configured to interface with a near field communication(NFC) transceiver or other radio-frequency transceiver on a computingdevice such as a mobile device (e.g., smartphone, tablet computer,wearable device, etc.). In some examples, the transceiver may receive asignal emitted by a radio-frequency transmitter included in a card suchas a payment card. In some examples, the card is a credit card, debitcard, bank card, business rewards card, gift card, or any otherappropriate form of payment that enables the transfer of funds or othertypes of value. Implementations of the present disclosure also supportthe use of cards other than payment cards.

In response to receiving the signal, the transceiver of the computingdevice may provide the information in the signal to the mobileapplication. For example, the card may include a NFC chip that emits asignal, and the presence of the signal (e.g., at a detectable signallevel) may indicate that the card is in proximity to the mobile device.In some examples, the card may be brought into proximity to (e.g.,tapped against) the mobile device by a user. The transmitter maytransmit an identifier (ID) of the card, which is received by the mobileapplication via the transceiver of the mobile device. The mobileapplication may automatically launch a particular workflow in the mobileapplication based on the presence of the signal and/or based on theparticular card ID transmitted in the signal. In some implementations,the workflow is a device-based workflow requiring one or more devices tobe executed. For example, at least a portion of the workflow may includeany number of screens to perform card servicing functions or othercustomer services through the mobile application. For example, a tap ofthe card against the mobile device may cause the application to launch acard activation workflow, if the card is not already activated. If thecard was previously activated, the tap may cause the application tolaunch a workflow to enable the user to view an account balance,transaction history, or other information associated with the cardaccount.

Using traditional computing systems, it may be cumbersome for a user tonavigate an application to perform card servicing functions on smallerdevices (e.g., wearable devices, smartphones, or other mobile deviceswith limited display capabilities and/or functionality as compared tolaptop and/or desktop computers). For example, using a traditionalsystem, the user may be required to navigate several levels deep intothe application and have knowledge of the application's structure inorder to perform financial services operations such as card activationand balance inquiries. Such navigation may be difficult on a wearabledevice or other mobile device with a small form factor. Implementationsof the present disclosure enable execution of an application that iseasier on such devices by, for example, automatically launching aworkflow when the user taps a card against the device, reducing thenumber of steps and the need to navigate complex entry points on a smalldevice.

In some examples, a workflow may include one or more screens, windows,frames, or other containers for displaying elements in a user interface(UI) of an application. A workflow may also include any number of UIelements in any number of containers. The UI elements may present text,images, video, audio, graphics, or other types of content. The UIelements may also include controls that enable a user to interact withthe application, such as text entry fields, selectable lists, menus,buttons, selectable images or graphics, or other types of controls. Insome examples, a workflow is a single screen, window, frame, or othercontainer that presents any number of UI elements. In some examples, aworkflow includes multiple screens, windows, frames, or othercontainers, and at least some of the UI elements may enable a user tonavigate from screen to screen within the application.

An application may be a web application configured to execute at leastpartly in a web browser or in an object configured to present webcontent, such as an object instance of a WebView class or a UIWebViewclass. In some examples, the application may be a native applicationthat is designed to execute within a hardware and/or softwareconfiguration of a computing device. The application may be configuredaccording to any programming language, including compiled languages,interpreted languages, scripting languages, and so forth. Theapplication may be configured to provide any type of service to theuser. In some examples, the application is a financial servicesapplication provided by a financial institution such as a bank, creditunion, investment brokerage, insurance company, and so forth.

A tap of the card against the user device may include the card cominginto physical contact with a portion of the user device. A tap may alsoinclude the card coming into proximity with the user device, such thatthe signal emitted by the transmitter in the card is detectable by atransceiver of the user device. The proximity range for signal detectionmay depend on the strength or level of the signal emitted by thetransmitter as well as the sensitivity or other characteristic(s) of thetransceiver in the user device.

FIG. 1 depicts an example system for automatically launching anapplication workflow in response to detecting a signal, according toimplementations of the present disclosure. In the example of FIG. 1 , auser 102 is wearing, carrying, or otherwise in the presence of a userdevice 106. Although FIG. 1 depicts an example in which the user device106 is a wearable computing device (e.g., a smartwatch), implementationssupport user devices 106 that are any type of computing device, such asa smartphone, tablet computer, laptop computer, in-vehicle computingsystem, and so forth. The user device 106 may be a mobile device orportable device such as a smartphone, tablet, wearable device, and soforth. The user device 106 may also be a less portable device such as adesktop computer, laptop computer, smart appliance, internet-of-things(IoT) device, and so forth. The user 102 may have a card 104 such as apayment card, and the card 104 may include a transmitter 108. In someexamples, the transmitter 108 is embedded in, affixed to, or otherwise(e.g., permanently) incorporated into the physical structure of the card104. In some examples, the transmitter 108 may be included in a stickeror other object that is affixed to the card 104 such that the user 102may remove the transmitter 108 from the card 104. In some examples, thetransmitter 108 may be physically separate from, but associated with,the card 104. For example, the card 104 may be mailed to the user 102with various papers and the transmitter 108 may be included in theenvelope with the card 104.

The transmitter 108 may be configured to emit a signal 110. In someimplementations, the signal 110 is a radio-frequency signal. The signal110 may also be within any other frequency ranges of the electromagnetic(EM) spectrum, such as visible light, infrared, and so forth.Implementations also support signals 110 that are non-EM signals, suchas audio emissions or other types of pressure waves. In someimplementations, the transmitter 108 actively emits the signal 110regardless of other signal(s) received at the transmitter 108. In someimplementations, the transmitter 108 may emit the signal 110 in responseto detecting a radio-frequency signal or other type of input signal atthe card 104. For example, the transmitter 108 may emit a NFC signal 110that is configured according to any version of a NFC specification. Inanother example, the transmitter 108 may emit a BlueTooth™ signal 110that is arranged according to any version of a BlueTooth™ or BlueTooth™Low Energy (LE) specification. In response to the detection of thesignal 110 at the user device 106, software executing on the user device106 may alter its state, as described further with reference to FIG.2.As shown in the example of FIG. 1 , an application executing on the userdevice 106 has launched a new card activation workflow in response tothe detected signal 110.

FIG. 2 depicts an example system for automatically launching anapplication workflow in response to detecting a signal 110, according toimplementations of the present disclosure. As shown in FIG. 2 , thesignal 110 may encode or otherwise include a card identifier (ID) 204.In some implementations, the transmitter 108 may transmit a card ID 204of the card 104 that is the card number itself (e.g., a 16 digit creditcard number). In some implementations, the transmitter 108 may transmita card ID 204 that is different than the card number but thatcorresponds (e.g., uniquely) to the card 104. In some examples, the cardID 204 may be associated with the card number in a table or other datastructure stored on a back-end server, such as the card servicedevice(s) 208.

The user device 106 may include one or more network interface(s) 202,which may also be described as a network interface controller (NIC) ortransceiver. In some examples, the network interface(s) 202 may includea NFC receiver and/or transceiver. On receiving the signal 110 throughthe network interface(s) 202, the application 206 may access the card ID204 encoded in the signal 110. The application 206 may cause anothersignal to be communicated to one or more card service(s) 210 executingon one or more card service device(s) 208. In some implementations, theapplication 206 may communicate the card ID 204 to the card service(s)210. Such communications may occur over one or more wired and/orwireless networks (not shown), such as the internet or other wide areanetwork (WAN). The card service device(s) 208 may include any type ofcomputing device(s), such as a server computer, a distributed computingdevice (e.g., cloud server), network server, and so forth.

In some implementations, the application 206 may also communicateinformation identifying a user 102 who is currently logged into theapplication 206. The card service(s) 210 may verify that the card ID 204corresponds to a card 104 that is associated with the authenticatedcurrent user 102 of the application 206. The card service(s) 210 mayalso verify that the communication is received from a user device 106that is associated with the user 102, to prevent fraudulenttransactions. If the card ID 204 corresponds to a card 104 that isassociated with the user 102, and the user device 106 is known to beassociated with the user 102, the card service(s) 210 may respond toindicate that the application 206 may proceed to present an appropriateworkflow. In some implementations, the card service(s) 210 may respondwith a card status 212 indicating a current status of the card 104, suchas whether the card has been activated or has yet to be activated.

In some implementations, the transmitter 108 may also emit other data ormetadata in addition to the card ID 204 in the same signal 110 or othersignal(s). For example, the transmitter 108 may be configured to emit asignal 110 that includes other information, such as a particular launchpoint. The launch point may be formatted as a uniform resourceidentifier (URI), such as a uniform resource locator (URL) or uniformresource name (URN). The application 206 may be configured to respond toa particular URI received at the network interface(s) 202. For example,in response to detecting the URI, the application 206 may performcertain actions such as launching a workflow or sending a communicationto the server to verify the card ID 204 and request instructions forwhich workflow to launch. In some examples, the application 206 maypresent content that is available at the URI, such as one or moreparticular web page(s).

FIG. 3 depicts a flow diagram of an example process for automaticallylaunching an application workflow in response to detecting a signal 110,according to implementations of the present disclosure. Operations ofthe process may be performed by the network interface(s) 202, theapplication 206, the card service(s) 210, or other software module(s)executing on the user device 106, the card service device(s) 208, orelsewhere.

In some implementations, a user 102 is authenticated (302) to login andaccess information through the application 206. Authentication mayinclude verifying user-provided credentials such as one or more of alogin name, password, personal identification number (PIN), answer(s) toknowledge-based questions (e.g., what is your maternal grandfather'smiddle name?), and so forth. Authentication may also include collectingbiometric data from the user 102 and verifying that the collectedbiometric data corresponds to previously collected data from the user102. Biometric data may include fingerprint(s), image(s) or video of theuser's face, audio recordings of the user's voice, and so forth. In someimplementations, authentication may include one or more round tripcommunications with the card service device(s) 208 to verify the user'scredential(s) and/or biometric data.

A signal 110 may be received (304) at the user device 106, by networkinterface(s) 202. In some examples, the signal 110 may be emitted from atransmitter 108 associated with the card 104 as described above. Thesignal 110 may include a card ID 204, and the card ID 204 may beextracted (306) from the signal 110 or otherwise determined based on theinformation in the signal 110. On determining that the signal 110 hasbeen received, the application 206 may request (308) a card status 212from the card service(s) 210. In some implementations, the application206 may send a request to the card service(s) 210, the request includingthe card ID 204.

In some implementations, the card service(s) 210 may perform (310)various fraud checking operation(s) based on the card ID 204 and/orother information included in the communication from the user device106. In some examples, the communication may include context informationsuch as a current location of the user device 106, the current user 102logged into the application 206, and/or a device ID of the user device106. The fraud checking operations may check that the location is withina range of locations that is typical for the user 102 and/or the userdevice 106. A current location that is outside the typical range mayindicate a possible fraudulent use of the user device 106 and/orapplication 206. Location may be determined based on a satellite-basednavigation component of the user device 106, such as a globalpositioning system (GPS) receiver, or using other techniques. The fraudchecking operations may check that the device ID is that of a userdevice 106 previously registered or used by the user 102. A differentdevice ID may indicate possible fraud. The device ID may be a mediaaccess control (MAC) address or Ethernet Hardware Address (EHA) of theuser device 106, an internet protocol (IP) address of the user device106, or other device ID that (e.g., uniquely) identifies the user device106 among multiple devices. If the card service(s) 210 determinepossible fraud, the request for card status 212 may be denied and/or theuser 102 may be prompted to provide further authentication informationto ensure the user 102 is authorized to use the card 104, the userdevice 106, and/or the application 206.

The card status 212 of the card 104 may be determined (312) based on thecard ID 204. In some examples, the card status 212 may indicate that thecard 104 is currently active, such that it may be used for transactions.Alternatively, the card status 212 may indicate that the card 104 iscurrently inactive, such that it may not yet be used for transactions.The card status 212 may be sent (314) to the application 206. Based onthe card status 212, the application 206 may determine (316) whether thecard 104 is already active. If not, the application 206 may present(318) a first workflow in the UI of the application 206. The firstworkflow may be a card activation workflow that enables the user 102 tospecify information to activate the card 104. In some examples, the cardactivation workflow may automatically send a message to the cardservice(s) 210 to activate the card 104 without any further informationprovided by the user 102. If it is determined that the card 104 isalready active, the application 206 may present (320) a second workflowin the UI of the application 206. The second workflow may enable theuser 102 to view account information such as current account balance,recent transaction(s), and so forth.

In some examples, the card service(s) 210 may determine that the card104 is a new card 104 that has been sent to the user 102, such that thecard 104 needs to be activated for use by the user 102. In suchexamples, the card service(s) 210 may respond with a card status messageindicating that the application 206 is to launch the new card activationworkflow to guide the user 102 through the process of activating thecard. In some implementations, the tap of an un-activated card 104 onthe user device 106 may prompt the application 206 to send a message tothe card service(s) 210 to activate the card 104, without any furtherinteraction by the user 102. If the card service(s) 210 determine thatthe card 104 has previously been activated, the card service(s) 210 mayrespond with a message indicating that the application 206 is to launcha different flow. For example, in response to the tap of an activatedcard 104, the application 206 may present screens displaying the currentbalance of the card account, recent transaction(s), previous payment(s),next payment due, or other account information.

In some implementations, the application 206 may include a feature toenable a user 102 to personalize the behavior of the application 206 inresponse to a tap of the card 104. For example, the user 102 maypersonalize the application 206 to show account balance in response to acard tap. The application 206 may also enable the user to personalize(e.g., enable or disable) whether the application 206 launches aworkflow automatically in response to detecting a signal 110, or whetherthe user 102 is prompted to allow or disallow the workflow launch inresponse to the signal 110. In some implementations, instead of making acall to the card service(s) 210 to determine which workflow to launch,the signal 110 may include a URL or other launch point to indicate whichworkflow to present in the application 206.

FIG. 4 depicts a flow diagram of an example process for card activation,according to implementations of the present disclosure. Operations ofthe process may be performed by the network interface(s) 202, theapplication 206, the card service(s) 210, or other software module(s)executing on the user device 106, the card service device(s) 208, orelsewhere.

The user 102 may be authenticated (402) to access the application 206,the signal 110 may be received (404), and the card ID 204 may beextracted (406) from the signal 110, as described above with referenceto 302, 304, and 306 respectively. The application 206 may send acommunication to the card service(s) 210 to request (408) cardactivation. The communication may include the card ID 204. On receivingthe communication, the card service(s) 210 may perform (410) variousfraud checking operations as described with reference to 310. If thefraud checking operation(s) do not identify possible fraud, the cardservice(s) 210 may activate (412) the card 104 for a period of time, andsend (414) a card activation message 416 to the user device 106. Theapplication 206 may present (418) the card activation message 416 in theUI of the application 206 to notify the user 102 that the card 104 maybe used for the period of time.

In some implementations, the workflow presented in the application 206may be based at least partly on contextual information. For example, ifthe location of the user device 106 outside its normal range oflocations or territory, the card service(s) 210 may instruct theapplication 206 to launch a travel notification workflow to enable theuser 102 to indicate that they are travelling, their expecteddestination, the duration of the travel, or other information. As in theexample of FIG. 4 , the determination that the user 102 is travellingmay cause the card service(s) 210 to disable the card 104 by default. Ifthe user 102 wishes to use the card 104 for a transaction whiletravelling, the user 102 may tap the card 104 against the user device106. This tap may cause the activation of the card 104 for a period oftime (e.g., 5 minutes, 15 minutes, etc.) to enable the user 102 tocomplete the current transaction using the card 104. Placing the card104 into an inactive state by default, and activating the card 104 for ashort period of time per transaction, may prevent the card 104 frombeing used if it is lost or stolen during the user's travels.

The tap may allow the card service(s) 210 to determine that the card 104is physically with the user 102, and the card 104 may be activated foruse for the period of time following the tap. The tap-to-use feature maybe activated manually by the user 102, or automatically activated undercertain circumstances (e.g., when the user 102 is travelling). In someimplementations, the user 102 may set preferences in the application 206to determine when or under what circumstances the card 104 is generallydisabled until tap, or generally enabled. The tap-to-use feature mayalso be automatically activated if possible fraud is detected (e.g.,based on an unusual location, device, or usage pattern), to require theuser 102 to prove that the card 104 is in their physical presence beforeauthorizing a charge.

As another example, if the current location of the user device 106 isdetermined to be at a store, the application 206 may respond to a tap bylaunching a workflow to present the current account balance instead ofother information, to enable the user 102 to determine whether theiraccount holds sufficient funds for a purchase. Location information maybe stored on the card service device(s) 208, and used subsequently todetermine whether subsequent transactions are possibly fraudulent. Forexample, if the card 104 is tapped to the user device 106 in Texas, buta transaction request is detected from a store in New York, thattransaction may be flagged as possibly fraudulent, assuming that thestore location can be accurately determined based on the network addressassociated with the transaction.

FIG. 5 depicts a flow diagram of an example process for automaticallylaunching an application workflow in response to detecting a signal 110,according to implementations of the present disclosure. Operations ofthe process may be performed by the network interface(s) 202, theapplication 206, the card service(s) 210, or other software module(s)executing on the user device 106, the card service device(s) 208, orelsewhere.

The signal 110 may be received (502) by the network interface(s) 202 ofthe user device 106. In some examples, the signal 110 may be emittedfrom a transmitter 108 included in a piece of mail, such as an envelope,a parcel, a postcard, and so forth. A URL may be extracted (504) fromthe signal 110, and the application 206 may present (506) informationassociated with the URL. For example, the application 206 may navigateto the URL and load one or more pages of information available at theURL. In some examples, a letter or other piece of physical mail may besent to user 102, and the mail may include an iBeacon or other type ofBluetooth™ LE transmitter 108. The Bluetooth™ transceiver or othernetwork interface(s) 202 on the user device 106 may detect a signal 110sent from the transmitter 108 and the application 206 may launch aworkflow in response to the signal 110. For example, an important ortime-sensitive letter such as a new card mailer may include atransmitter chip, and the application 206 may respond to the signal 110by presenting a screen to inform the user 102 that important new mailhas been received. This may help the user 102 avoid throwing awayletters that include a payment card, letters that require a customersignature, time-sensitive mail, or other important mail that mayotherwise be perceived as junk mail by the user 102. A letter mayinclude a LE transmitter that has longer range or signal strength than astandard NFC transmitter, to enable signal detection even if the userdevice 106 is up to several meters away from the mail. In some examples,the signal 110 transmitted by the transmitter 108 included in the card104 or a piece of mail may be encrypted or otherwise secured such thatthe application 206 is able to decrypt the signal 110 but otherunauthorized processes are not able extract information from the signal110.

In some implementations, the application 206 may be configured to detectand respond to the tap of another user's card to a user device 106. Forexample, a funds transfer workflow from userA to userB may be launchedin response to detecting the tap of userA's card to userB's user device106, if userB has configured their account to specify userA as a friendor contact for authorized funds transfers, and/or vice versa.

FIG. 6 depicts an example computing system, according to implementationsof the present disclosure. The system 600 may be used for any of theoperations described with respect to the various implementationsdiscussed herein. For example, the system 600 may be included, at leastin part, in one or more of the user device 106 or the card servicedevice(s) 208 described herein. The system 600 may include one or moreprocessors 610, a memory 620, one or more storage devices 630, and oneor more input/output (I/O) devices 650 controllable via one or more I/Ointerfaces 640. The various components 610, 620, 630, 640, or 650 may beinterconnected via at least one system bus 660, which may enable thetransfer of data between the various modules and components of thesystem 600.

The processor(s) 610 may be configured to process instructions forexecution within the system 600. The processor(s) 610 may includesingle-threaded processor(s), multi-threaded processor(s), or both. Theprocessor(s) 610 may be configured to process instructions stored in thememory 620 or on the storage device(s) 630. The processor(s) 610 mayinclude hardware-based processor(s) each including one or more cores.The processor(s) 610 may include general purpose processor(s), specialpurpose processor(s), or both.

The memory 620 may store information within the system 600. In someimplementations, the memory 620 includes one or more computer-readablemedia. The memory 620 may include any number of volatile memory units,any number of non-volatile memory units, or both volatile andnon-volatile memory units. The memory 620 may include read-only memory,random access memory, or both. In some examples, the memory 620 may beemployed as active or physical memory by one or more executing softwaremodules.

The storage device(s) 630 may be configured to provide (e.g.,persistent) mass storage for the system 600. In some implementations,the storage device(s) 630 may include one or more computer-readablemedia. For example, the storage device(s) 630 may include a floppy diskdevice, a hard disk device, an optical disk device, or a tape device.The storage device(s) 630 may include read-only memory, random accessmemory, or both. The storage device(s) 630 may include one or more of aninternal hard drive, an external hard drive, or a removable drive.

One or both of the memory 620 or the storage device(s) 630 may includeone or more computer-readable storage media (CRSM). The CRSM may includeone or more of an electronic storage medium, a magnetic storage medium,an optical storage medium, a magneto-optical storage medium, a quantumstorage medium, a mechanical computer storage medium, and so forth. TheCRSM may provide storage of computer-readable instructions describingdata structures, processes, applications, programs, other modules, orother data for the operation of the system 600. In some implementations,the CRSM may include a data store that provides storage ofcomputer-readable instructions or other information in a non-transitoryformat. The CRSM may be incorporated into the system 600 or may beexternal with respect to the system 600. The CRSM may include read-onlymemory, random access memory, or both. One or more CRSM suitable fortangibly embodying computer program instructions and data may includeany type of non-volatile memory, including but not limited to:semiconductor memory devices, such as EPROM, EEPROM, and flash memorydevices; magnetic disks such as internal hard disks and removable disks;magneto-optical disks; and CD-ROM and DVD-ROM disks. In some examples,the processor(s) 610 and the memory 620 may be supplemented by, orincorporated into, one or more application-specific integrated circuits(ASICs).

The system 600 may include one or more I/O devices 650. The I/Odevice(s) 650 may include one or more input devices such as a keyboard,a mouse, a pen, a game controller, a touch input device, an audio inputdevice (e.g., a microphone), a gestural input device, a haptic inputdevice, an image or video capture device (e.g., a camera), or otherdevices. In some examples, the I/O device(s) 650 may also include one ormore output devices such as a display, LED(s), an audio output device(e.g., a speaker), a printer, a haptic output device, and so forth. TheI/O device(s) 650 may be physically incorporated in one or morecomputing devices of the system 600, or may be external with respect toone or more computing devices of the system 600.

The system 600 may include one or more I/O interfaces 640 to enablecomponents or modules of the system 600 to control, interface with, orotherwise communicate with the I/O device(s) 650. The I/O interface(s)640 may enable information to be transferred in or out of the system600, or between components of the system 600, through serialcommunication, parallel communication, or other types of communication.For example, the I/O interface(s) 640 may comply with a version of theRS-232 standard for serial ports, or with a version of the IEEE 1284standard for parallel ports. As another example, the I/O interface(s)640 may be configured to provide a connection over Universal Serial Bus(USB) or Ethernet. In some examples, the I/O interface(s) 640 may beconfigured to provide a serial connection that is compliant with aversion of the IEEE 1394 standard.

The I/O interface(s) 640 may also include one or more networkinterfaces, such as network interface(s) 202, that enable communicationsbetween computing devices in the system 600, or between the system 600and other network-connected computing systems. The network interface(s)may include one or more network interface controllers (NICs) or othertypes of transceiver devices configured to send and receivecommunications over one or more networks using any network protocol.

Computing devices of the system 600 may communicate with one another, orwith other computing devices, using one or more networks. Such networksmay include public networks such as the internet, private networks suchas an institutional or personal intranet, or any combination of privateand public networks. The networks may include any type of wired orwireless network, including but not limited to local area networks(LANs), wide area networks (WANs), wireless WANs (WWANs), wireless LANs(WLANs), mobile communications networks (e.g., 3G, 4G, Edge, etc.), andso forth. In some implementations, the communications between computingdevices may be encrypted or otherwise secured. For example,communications may employ one or more public or private cryptographickeys, ciphers, digital certificates, or other credentials supported by asecurity protocol, such as any version of the Secure Sockets Layer (SSL)or the Transport Layer Security (TLS) protocol.

The system 600 may include any number of computing devices of any type.The computing device(s) may include, but are not limited to: a personalcomputer, a smartphone, a tablet computer, a wearable computer, animplanted computer, a mobile gaming device, an electronic book reader,an automotive computer, a desktop computer, a laptop computer, anotebook computer, a game console, a home entertainment device, anetwork computer, a server computer, a mainframe computer, a distributedcomputing device (e.g., a cloud computing device), a microcomputer, asystem on a chip (SoC), a system in a package (SiP), and so forth.Although examples herein may describe computing device(s) as physicaldevice(s), implementations are not so limited. In some examples, acomputing device may include one or more of a virtual computingenvironment, a hypervisor, an emulation, or a virtual machine executingon one or more physical computing devices. In some examples, two or morecomputing devices may include a cluster, cloud, farm, or other groupingof multiple devices that coordinate operations to provide loadbalancing, failover support, parallel processing capabilities, sharedstorage resources, shared networking capabilities, or other aspects.

Implementations and all of the functional operations described in thisspecification may be realized in digital electronic circuitry, or incomputer software, firmware, or hardware, including the structuresdisclosed in this specification and their structural equivalents, or incombinations of one or more of them. Implementations may be realized asone or more computer program products, i.e., one or more modules ofcomputer program instructions encoded on a computer readable medium forexecution by, or to control the operation of, data processing apparatus.The computer readable medium may be a machine-readable storage device, amachine-readable storage substrate, a memory device, a composition ofmatter effecting a machine-readable propagated signal, or a combinationof one or more of them. The term “computing system” encompasses allapparatus, devices, and machines for processing data, including by wayof example a programmable processor, a computer, or multiple processorsor computers. The apparatus may include, in addition to hardware, codethat creates an execution environment for the computer program inquestion, e.g., code that constitutes processor firmware, a protocolstack, a database management system, an operating system, or acombination of one or more of them. A propagated signal is anartificially generated signal, e.g., a machine-generated electrical,optical, or electromagnetic signal that is generated to encodeinformation for transmission to suitable receiver apparatus.

A computer program (also known as a program, software, softwareapplication, script, or code) may be written in any appropriate form ofprogramming language, including compiled or interpreted languages, andit may be deployed in any appropriate form, including as a standaloneprogram or as a module, component, subroutine, or other unit suitablefor use in a computing environment. A computer program does notnecessarily correspond to a file in a file system. A program may bestored in a portion of a file that holds other programs or data (e.g.,one or more scripts stored in a markup language document), in a singlefile dedicated to the program in question, or in multiple coordinatedfiles (e.g., files that store one or more modules, sub programs, orportions of code). A computer program may be deployed to be executed onone computer or on multiple computers that are located at one site ordistributed across multiple sites and interconnected by a communicationnetwork.

The processes and logic flows described in this specification may beperformed by one or more programmable processors executing one or morecomputer programs to perform functions by operating on input data andgenerating output. The processes and logic flows may also be performedby, and apparatus may also be implemented as, special purpose logiccircuitry, e.g., an FPGA (field programmable gate array) or an ASIC(application specific integrated circuit).

Processors suitable for the execution of a computer program include, byway of example, both general and special purpose microprocessors, andany one or more processors of any appropriate kind of digital computer.Generally, a processor may receive instructions and data from a readonly memory or a random access memory or both. Elements of a computercan include a processor for performing instructions and one or morememory devices for storing instructions and data. Generally, a computermay also include, or be operatively coupled to receive data from ortransfer data to, or both, one or more mass storage devices for storingdata, e.g., magnetic, magneto optical disks, or optical disks. However,a computer need not have such devices. Moreover, a computer may beembedded in another device, e.g., a mobile telephone, a personal digitalassistant (PDA), a mobile audio player, a Global Positioning System(GPS) receiver, to name just a few. Computer readable media suitable forstoring computer program instructions and data include all forms ofnon-volatile memory, media and memory devices, including by way ofexample semiconductor memory devices, e.g., EPROM, EEPROM, and flashmemory devices; magnetic disks, e.g., internal hard disks or removabledisks; magneto optical disks; and CD ROM and DVD-ROM disks. Theprocessor and the memory may be supplemented by, or incorporated in,special purpose logic circuitry.

To provide for interaction with a user, implementations may be realizedon a computer having a display device, e.g., a CRT (cathode ray tube) orLCD (liquid crystal display) monitor, for displaying information to theuser and a keyboard and a pointing device, e.g., a mouse or a trackball,by which the user may provide input to the computer. Other kinds ofdevices may be used to provide for interaction with a user as well; forexample, feedback provided to the user may be any appropriate form ofsensory feedback, e.g., visual feedback, auditory feedback, or tactilefeedback; and input from the user may be received in any appropriateform, including acoustic, speech, or tactile input.

Implementations may be realized in a computing system that includes aback end component, e.g., as a data server, or that includes amiddleware component, e.g., an application server, or that includes afront end component, e.g., a client computer having a graphical userinterface or a web browser through which a user may interact with animplementation, or any appropriate combination of one or more such backend, middleware, or front end components. The components of the systemmay be interconnected by any appropriate form or medium of digital datacommunication, e.g., a communication network. Examples of communicationnetworks include a local area network (“LAN”) and a wide area network(“WAN”), e.g., the Internet.

The computing system may include clients and servers. A client andserver are generally remote from each other and typically interactthrough a communication network. The relationship of client and serverarises by virtue of computer programs running on the respectivecomputers and having a client-server relationship to each other.

While this specification contains many specifics, these should not beconstrued as limitations on the scope of the disclosure or of what maybe claimed, but rather as descriptions of features specific toparticular implementations. Certain features that are described in thisspecification in the context of separate implementations may also beimplemented in combination in a single implementation. Conversely,various features that are described in the context of a singleimplementation may also be implemented in multiple implementationsseparately or in any suitable sub-combination. Moreover, althoughfeatures may be described above as acting in certain combinations andeven initially claimed as such, one or more features from a claimedcombination may in some examples be excised from the combination, andthe claimed combination may be directed to a sub-combination orvariation of a sub-combination.

Similarly, while operations are depicted in the drawings in a particularorder, this should not be understood as requiring that such operationsbe performed in the particular order shown or in sequential order, orthat all illustrated operations be performed, to achieve desirableresults. In certain circumstances, multitasking and parallel processingmay be advantageous. Moreover, the separation of various systemcomponents in the implementations described above should not beunderstood as requiring such separation in all implementations, and itshould be understood that the described program components and systemsmay generally be integrated together in a single software product orpackaged into multiple software products.

A number of implementations have been described. Nevertheless, it willbe understood that various modifications may be made without departingfrom the spirit and scope of the disclosure. For example, various formsof the flows shown above may be used, with steps re-ordered, added, orremoved. Accordingly, other implementations are within the scope of thefollowing claims.

What is claimed:
 1. A computer-implemented method performed by at leastone processor, the method comprising: receiving, by the at least oneprocessor and through a transceiver component of a user deviceassociated with a user of a physical payment card, a signal from a chipin the physical payment card, wherein: the signal is transmitted from aradio-frequency transmitter included in the physical payment card, orthe signal is transmitted from a near field communication (NFC)transmitter included in the physical payment card; verifying that thephysical payment card and the user device are associated with the user;receiving, by the at least one processor, a status of the physicalpayment card based on the signal; and after the verifying and based atleast partly on the status of the physical payment card indicating aninactive status, presenting a card activation workflow in an applicationexecuting on the user device, wherein use of the card activationworkflow causes the status of the physical payment card to transitionfrom inactive to active.
 2. The method of claim 1, further comprising,after the card activation workflow causes the status of the physicalpayment card to transition from inactive to active, presenting anaccount information workflow responsive to the status of the physicalpayment card being currently active.
 3. The method of claim 1, furthercomprising: sending a status request to a card service executingremotely from the user device, wherein the status request is based onthe signal; wherein the status is provided by the card service inresponse to the status request.
 4. The method of claim 1, wherein thesignal further indicates that the physical payment card is beingactivated for the first time, and wherein the card activation workflowis a new card activation workflow.
 5. The method of claim 1, wherein thesignal includes a card identifier.
 6. The method of claim 1, furthercomprising: sending, by the at least one processor, an activationrequest to a card service executing remotely from the user device,wherein the activation request is based on the signal; and receiving, bythe at least one processor, a notification from the card service inresponse to the request, the notification indicating that the physicalpayment card is activated for a specified period of time.
 7. The methodof claim 6, wherein the status of the physical payment card is inactiveprior to sending the activation request, based on a determination that alocation of the user device is outside a typical area of travel.
 8. Themethod of claim 1, wherein the signal includes a launch point for thecard activation workflow.
 9. A computing system comprising: at least oneprocessor; and one or more memories communicatively coupled to the atleast one processor, the memories storing instructions which, whenexecuted by the at least one processor, cause the computing system toperform a process comprising: receiving, through a transceiver componentof a user device associated with a user of a physical payment card, asignal from a chip in a physical payment card; verifying that thephysical payment card and the user device are associated with the user;and after the verifying and based at least partly on a status of thephysical payment card being currently inactive: presenting a cardactivation workflow, wherein use of the card activation workflow causesthe status of the physical payment card to transition from inactive toactive.
 10. The computing system of claim 9, wherein the process furthercomprises: after the card activation workflow causes the status of thephysical payment card to transition from inactive to active, presentingan account information workflow responsive to the status of the physicalpayment card being currently active.
 11. The computing system of claim9, wherein the process further comprises sending a status request to acard service executing remotely, wherein the status request is based onthe signal; and wherein the status is provided by the card service inresponse to the status request.
 12. The computing system of claim 9,wherein the signal further indicates that the physical payment card isbeing activated for the first time, and wherein the card activationworkflow is a new card activation workflow.
 13. The computing system ofclaim 9, wherein the signal includes a card identifier; and wherein thesignal is transmitted from a radio-frequency transmitter included in thephysical payment card or the signal is transmitted from a near fieldcommunication (NFC) transmitter included in the physical payment card.14. The computing system of claim 9, wherein the signal includes alaunch point for the card activation workflow.
 15. One or morecomputer-readable media storing instructions that, when executed by atleast one processor, cause the at least one processor to perform aprocess comprising: receiving, through a transceiver component of a userdevice, a signal from a chip in a physical payment card; verifying thatthe physical payment card and the user device are associated with theuser; receiving a status of the physical payment card based on thesignal; and after the verifying and based at least partly on the statusof the physical payment card indicating an inactive status, presenting acard activation workflow, wherein use of the card activation workflowcauses the status of the physical payment card to transition frominactive to active.
 16. The one or more computer-readable media of claim15, wherein the process further comprises: after the card activationworkflow causes the status of the physical payment card to transitionfrom inactive to active, presenting an account information workflowresponsive to the status of the physical payment card being currentlyactive.
 17. The one or more computer-readable media of claim 15, whereinthe process further comprises sending a status request to a card serviceexecuting remotely, wherein the status request is based on the signal;and wherein the status is provided by the card service in response tothe status request.
 18. The one or more computer-readable media of claim15, wherein the process further comprises: sending an activation requestto a card service executing remotely, the activation request being basedon the signal; and receiving a notification from the card service inresponse to the request, the notification indicating that the physicalpayment card is activated for a period of time.
 19. The one or morecomputer-readable media of claim 18, wherein the physical payment cardis inactive prior to sending the activation request, based on adetermination that a location of the user device is outside a typicalarea of travel.
 20. The one or more computer-readable media of claim 15,wherein the process further comprises: responsive to the status of thephysical payment card being currently active: displaying a currentbalance of the physical payment card, recent transactions associatedwith the physical payment card, previous payments associated with thephysical payment card and next payment due for the physical paymentcard.